package de.jmda.core.mproc.task;

import java.util.Set;

import javax.lang.model.element.TypeElement;

/**
 * Base class for {@link Task}s that are targeted to the {@link TypeElement}s
 * specified by types.
 *
 * @author roger@jmda.de
 */
public abstract class AbstractTypeElementsTaskTypes
		extends AbstractTypeElementsTask
{
	/**
	 * Because of Java type erasure this constructor can not be defined in
	 * {@link AbstractTypeElementsTask} because there already is
	 * {@link AbstractTypeElementsTask#AbstractTypeElementsTask(Set, Set)} where
	 * the Set parameters are generic. Java compiler prevents definition of
	 * multiple methods which differ only in the number of generic parameters.
	 *
	 * @param types
	 */
	public AbstractTypeElementsTaskTypes(Set<? extends Class<?>> types)
  {
	  super(null, types);
  }
}